100 M=8192:GOSUB500:GOTO150 110 Z=M+INT(Y/8)*320+INT(X/8)*8+(YAND7) 120 POKEZ,PEEK(Z)ORT%(XAND7):RETURN 130 Z=M+INT(Y/8)*320+INT(X/8)*8+(YAND7) 140 POKEZ,PEEK(Z)ANDNOTT%(XAND7):RETURN 150 FORI=0TO7:T%(7-I)=2^I:NEXT 160 SYS49152:POKE53272,PEEK(53272)OR8:POKE53265,PEEK(53265)OR32 170 S=99:DIML%(S),M%(S) 180 FORT=1TOS:L%(T)=RND(0)*S*3+12:X=L%(T) 190 M%(T)=2*T:Y=M%(T):GOSUB110:NEXT:TI$="000000":G=INT(S/2) 200 N=0:FORI=1TOS-G 210 IFL%(I)>L%(I+G)THENGOSUB280:T=L%(I):L%(I)=L%(I+G):L%(I+G)=T:N=1 220 NEXT:IFN=1THEN200 230 G=INT(G/2):IFG>=1THEN200 240 T$=TI$:POKE198,0 250 GETA$:IFA$=""THEN250 260 POKE53265,PEEK(53265)AND223:PRINT"[147]":POKE53272,21 270 PRINTS"ITEMS SORTED IN "MID$(T$,3,2)":"RIGHT$(T$,2)".":END 280 Y=M%(I):X=L%(I):GOSUB130:Y=M%(I+G):X=L%(I+G):GOSUB130 290 Y=M%(I):X=L%(I+G):GOSUB110:Y=M%(I+G):X=L%(I):GOSUB110:RETURN 500 X=0:FORI=49152TO49190:READA:X=X+A:POKEI,A:NEXT 510 IFX<>6678THENPRINT"ERROR IN DATA STATEMENTS.":STOP 520 RETURN 530 DATA 169,32,133,252,162,32,169 540 DATA 0,168,145,251,200,208,251 550 DATA 230,252,202,208,246,169,4 560 DATA 133,254,170,160,0,169,16 570 DATA 145,253,200,208,251,230,254 580 DATA 202,208,246,96